This invention is related to a graphics display method used to combine line segments to generate and display graphic patterns on screen, as well as to a system that use the graphics display method, especially it is related to a graphics display method suitable for plotting graphic patterns at high speed and a system that use said graphics display method.
Furthermore, this invention is related to a method to generate straight lines on a work station display screen, especially a method appropriate to generate straight lines in a high speed parallel operation using a graphic processor equipped with multiple processors.
In conventional graphics display systems, for example, those disclosed in Japanese Patent Open-Laid No. 3-194671(1991), the system comprises registers such as the first register group used for graphic pattern data such as start point, end point, colors etc. set by a host processor; and the second register group used to copy graphic pattern data from the first register group when a plotting operation is started, and hold them to use plotting operation. To provide the first and second register groups allows the host processor to write data in them and converts graphic data to pixel one in a parallel operation, highly speeding up the plotting operation.
In addition, the graphics display system, for example, that disclosed in Japanese Patent Laid-Open No. 2-250113(1990), can operate multiple application programs concurrently in parallel. If more than two processes in those programs use a graphics processor, they cannot access the graphics processor concurrently. To avoid this problem, another means is needed to adjust the access requests from those processes. This adjusting process must requests buffer access before accessing the graphics processor, so it needs more time to read/write data from/in a memory when the process is switched over. The method solves this problem by saving all graphic pattern data set in the graphics processor and reading them out when restarting the processing so that each graphic process can access the graphics processor directly.
On the other hand, when plotting a graphic pattern comprising many line segments, only the end point data on a line of the consecutive line segments is supplied by the graphic processor to speed up the plotting. This system is disclosed in Japanese Patent Laid Open No. 60-15777(1985). In this patent, however, how to apply the system to the graphic processor comprising the two register groups and how to use the adjusting means when controlling multiple processors that access a graphics processor in parallel are not mentioned.
U.S. Pat. No. 5,163,127 also disclosed another method, which generates pixels for a straight line using two or more processors in parallel. In this conventional art, the slope of the straight line is multiplied by an integer indicating the number of the processors in use and the result is added to the coordinates of the start point of the straight line to generate pixels as needed.
In addition, the conventional systems used to plot straight lines are roughly classified into two types; the first type is, as disclosed in Japanese Patent Laid-Open Publication No. 2-41790(1990), a system to generate pixels in an image memory so that they may become the nearest to a given straight line only through fractional calculation. The difference between the true straight line and the integer grid coordinate system in the image memory is represented by a fraction. This is called Bresenham's algorithm. The second type is, as disclosed in Japanese Patent Laid-Open No. 3-36676(1991), a system used to represent the slope of a straight line by a decimal fraction and add the slope value to the start point coordinates repeatedly to generate pixels for the straight line.
The prior art used to generate pixels for a given straight line using two or more processors in parallel, as mentioned above, is effective to calculate both the coordinates and brightness of the pixels at the same time, but it requires a dividing operation to find the slope of a given straight line even when the brightness is fixed. When compared with the method that uses the Bresenham's algorithm the host processor load is increased much more. Concretely, if the Bresenham's algorithm is used, only the coordinates of the start and end points are needed for calculation. For the method that represents the slope of a given straight line by a decimal fraction, the slope and length of the straight line must be given very accurately in addition to the x and y coordinates of the start and end point and the length for the straight line. Therefore, in this case, the host processor load is increased significantly.